Completed
Push — master ( dd0888...3b0b80 )
by Maxence
07:17
created

result.displayNoResult   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 6
rs 9.4285
cc 1
nc 1
nop 0
1
/*
2
 * FullTextSearch - Full text search framework for Nextcloud
3
 *
4
 * This file is licensed under the Affero General Public License version 3 or
5
 * later. See the COPYING file.
6
 *
7
 * @author Maxence Lange <[email protected]>
8
 * @copyright 2018
9
 * @license GNU AGPL version 3 or any later version
10
 *
11
 * This program is free software: you can redistribute it and/or modify
12
 * it under the terms of the GNU Affero General Public License as
13
 * published by the Free Software Foundation, either version 3 of the
14
 * License, or (at your option) any later version.
15
 *
16
 * This program is distributed in the hope that it will be useful,
17
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19
 * GNU Affero General Public License for more details.
20
 *
21
 * You should have received a copy of the GNU Affero General Public License
22
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
23
 *
24
 */
25
26
/** global: OCA */
27
/** global: settings */
28
/** global: curr */
29
/** global: nav */
30
31
/** @namespace result.provider */
32
/** @namespace result.documents */
33
34
var result = {
35
36
	displayResult: function (res) {
37
		box_elements.searchError.hide();
0 ignored issues
show
Bug introduced by
The variable box_elements seems to be never declared. If this is a global, consider adding a /** global: box_elements */ comment.

This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.

To learn more about declaring variables in Javascript, see the MDN.

Loading history...
38
		if (settings.resultContainer === null) {
39
			return;
40
		}
41
42
		var searchResult = res.result;
43
		if (searchResult.length === 0) {
44
			// result.displayNoResult();
45
			return;
46
		}
47
48
		settings.options = res.request.options;
49
		for (var i = 0; i < searchResult.length; i++) {
50
			result.displayProviderResult(res.request, searchResult[i]);
51
		}
52
	},
53
54
55
	displayError: function (res) {
56
		box_elements.searchError.text(res.error).show();
0 ignored issues
show
Bug introduced by
The variable box_elements seems to be never declared. If this is a global, consider adding a /** global: box_elements */ comment.

This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.

To learn more about declaring variables in Javascript, see the MDN.

Loading history...
57
	},
58
59
60
	displayProviderResult: function (request, result) {
61
62
		// settings.divNoResult.fadeTo(settings.delay_result, 0);
63
64
		var current = curr.getProviderResult(result.provider.id);
65
		var divProvider = nav.getDivProvider(result.provider.id, result.provider.name);
66
		nav.manageDivProviderNavigation(divProvider.children('.provider_navigation'), request,
67
			result.meta);
68
		nav.manageDivProviderResult(divProvider.find('.provider_result'), result.documents,
69
			current.documents);
70
71
		divProvider.slideDown(settings.delay_provider, function () {
72
			$(this).fadeTo(settings.delay_provider, 1);
73
		});
74
75
		curr.setProviderResult(result.provider.id, result);
76
	},
77
78
79
	recalibrateResult: function (oldResult, newResult) {
80
		var tmpResult = [];
81
		for (var i = 0; i < oldResult.length; i++) {
82
			if (result.getResultIndex(oldResult[i].id, newResult) > -1) {
83
				tmpResult.push(oldResult[i]);
84
			}
85
		}
86
87
		return tmpResult;
88
	},
89
90
91
	getResultIndex: function (id, result) {
92
		if (!result) {
93
			return -1;
94
		}
95
96
		for (var i = 0; i < result.length; i++) {
97
			if (result[i].id === id) {
98
				return i;
99
			}
100
		}
101
102
		return -1;
103
	}
104
105
106
};
107